# 目标函数
# max(sum(xi))
# 约束条件
# wi xi <= C
# xi <0,1> , 1 <= i <= n

# 贪心选择策略
# 轻者先装 ， 如果重者先装，那么。。。

w = [40,60,20.5,88,94] # 302.5
C = 280

# 可行解是数组
answer = []

#需要排序，该策略是小的在前
index = sorted(range(len(w)), key=lambda k: w[k],reverse=False)


def loading(w):
    left_weight = C 

    for i in index:
        left_weight = left_weight - w[i]
 
        if left_weight > 0:
            answer.append(i+1) 
        else:
            break
    print('我选择的方案,<装第几个箱子>:',answer)
    print('一共装了多少:',len(answer))
loading(w)





